Tipps und Hinweise für Mac OSX & CVS

Tipps und Hinweise für Mac OSX & CVS

Anmerkung des Autors: Diese Tipps beruhen auf Ratschlägen und Hinweisen, die uns Martin Costabel freundlicherweise überlassen hat. Bei der Betreuung des Fink-Pakets für Scribus hat er schier Unglaubliches geleistet, und ebenso unterstützt er die Benutzer von Fink über die Mailingliste.

Erstellen einer CVS-Version von Scribus

Installieren Sie die erforderlichen Bibliotheken. Diese dürften am einfachsten zu bekommen sein, wenn Sie fink install scribus eingeben und abbrechen, sobald alle erforderlichen Komponenten installiert sind und Fink damit beginnt, Scribus zu kompilieren. Eine Liste mit den notwendigen Paketen finden Sie in der Fink-Datei scribus.info unter "Depends" und "BuildDepends". Die aufgeführten Abhängigkeiten werden automatisch aufgelöst und von Fink installiert.

Depends

Build Depends

Einrichten der Umgebung:

Wenn Sie tcsh als Shell benutzen:

setenv CFLAGS -I/sw/include
setenv LDFLAGS -L/sw/lib
setenv CXXFLAGS $CFLAGS
setenv CPPFLAGS $CXXFLAGS
setenv ACLOCAL_FLAGS "-I /sw/share/aclocal"
setenv PKG_CONFIG_PATH "/sw/lib/pkgconfig"

Wenn Sie bash als Shell benutzen:

export CFLAGS=-I/sw/include
export LDFLAGS=-L/sw/lib
export CXXFLAGS=$CFLAGS
export CPPFLAGS=$CXXFLAGS
export ACLOCAL_FLAGS="-I /sw/share/aclocal"
export PKG_CONFIG_PATH="/sw/lib/pkgconfig"

Dann kann folgendes eingegeben werden:

make -f Makefile.dist

Es ist nicht erforderlich, autoconf und automake unter Fink zu installieren, da diese bereits in MacOSX 10.3 integriert sind. Nun das obligatorische configure wie folgt:

./configure --with-qt-dir=/sw --with-qt-includes=/sw/include/qt --with-qt-libraries=/sw/lib
--with-extra-includes=/sw/include
--with-pythondir=/System/Library/Frameworks/Python.framework/Versions/2.3/

Bevor sich nun make eingeben läßt, werden noch die Patches benötigt, welche gemäß "PatchScript" in der Fink-Datei scribus.info ausgeführt werden.

Die erste Gruppe Patches hilft dabei, die richtigen Kopfzeilen- und Bibliotheken-Versionen von FreeType (jene von Fink, denn Apples X11 hat eine veraltete FreeType-Version) sowie die richtige Version von Python (der von MacOSX) zu ermitteln:

perl -pi -e 's,usr/X11/bin,usr/X11R6/bin,g' configure
perl -pi -e 's,FREETYPE_CONFIG=\"\",FREETYPE_CONFIG=\"/sw/lib/freetype2/bin/freetype-config\",g' configure
perl -pi -e 's,LIBS=\"\-lfreetype,LIBS=\"\$LIBFREETYPE_LIBS,g' configure
perl -pi -e "s,PYTHONLIB=.*,PYTHONLIB='-framework Python'\npython_libdir=yes\nLIBPYTHON=' ',g" configure
perl -pi -e "s,LIBPYTHON =.*,LIBPYTHON=,g" scribus/plugins/scriptplugin/Makefile.in

Die zweite Gruppe Patches ist notwendig, um die Plugins zu erstellen. Keine optimale Lösung, es geht vermutlich auch anders.

perl -pi -e 's|^AM_LDFLAGS = .*\-s|AM_LDFLAGS = \$(all_libraries) \$(LIB_QT)|g' `find . -name Makefile.in`
perl -pi -e 's|(lib.*)\.la|$1.so|g' `find . -name Makefile.in`
perl -pi -e 's|-version-info 0:0:0|-bundle -undefined dynamic_lookup -bind_at_load|g' `find . -name Makefile.in`
perl -pi -e 's|libpdf_la_LIBADD =|libpdf_la_LIBADD =\$(LIBTIFF)|g' scribus/libpdf/Makefile.in

Dann kann folgendes eingegeben werden:

make
sudo make install

Dies installiert Scribus nach /usr/local, wodurch Konflikte mit einer anderen, von Fink installierten Version vermieden werden, die sich in /sw befindet.